home *** CD-ROM | disk | FTP | other *** search
/ Night Owl 6 / Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso / 015a / tsrs104d.zip / TSELECT.DOC < prev    next >
Text File  |  1991-10-01  |  81KB  |  1,837 lines

  1.  
  2.  
  3.  
  4.  
  5.                                 TSR-Select
  6.  
  7.  
  8.  
  9.  
  10.  
  11.                        A Configurable, Swapping TSR
  12.                                Menu Program
  13.  
  14.  
  15.  
  16.  
  17.                           Copyright (c) 1990-1991
  18.                          Quadrant Computer Systems
  19.  
  20.  
  21.  
  22.  
  23.  
  24.                                                                August 1991
  25.  
  26.  
  27.  
  28. Copyright 1991 Quadrant Computer Systems.  All rights reserved.
  29.  
  30. No part of this publication may be reproduced, translated into another
  31. language, stored in a retrieval system, or transmitted in any form or by any
  32. means, electronic or mechanical, or photocopied, recorded, or otherwise,
  33. without the prior written consent of Quadrant Computer Systems.
  34.  
  35. The information in this document, and program specifications, are subject to
  36. change without notice and does not represent a commitment on the part of
  37. Quadrant Computer Systems.  The software described in this document is
  38. furnished under license agreement.  The software and document may be used
  39. and copied only in accordance with the terms of that agreement.
  40.  
  41. All brand and product names contained herein are trademarks or registered
  42. trademarks of their respective holders.
  43.  
  44.  
  45.  
  46.  
  47.  
  48.  
  49.  
  50.  
  51.  
  52.  
  53.  
  54.  
  55.  
  56.  
  57.  
  58.                   Quadrant Computer Systems
  59.                     13164 Memorial Drive
  60.                           Suite 126
  61.                     Houston, Texas 77079
  62.  
  63.  
  64.  
  65.  
  66.  
  67.  
  68.  
  69.  
  70.                Second Edition, September 1991
  71.  
  72.  
  73.  
  74.  
  75.  
  76.  
  77.                   A sample TSR-Select Menu
  78.        on top of a Word Perfect 5.1 Directory Listing
  79.  
  80.  
  81. 09-15-91  12:42a            Directory C:\DATA\WP\*.*
  82. Document size:        0   Free:101,326,848 Used:  1,844,253     Files:     138
  83.  
  84.  MEMAD1  .       9,826  06-12-91 04:34p │ MEMADRU .       7,449  06-12-91 04:33p
  85.  MEMADS  .       3,180  06-10-91 09:46p │ MEMAGEND.       3,705  06-13-91 02:06p
  86.  MEMCHAIR.      17,953  06-12-91 ╒═TSR-SELECT══╕TR.       6,890  06-13-91 12:49p
  87.  MEMCOUPL.      10,919  06-10-91 │ >Mail<      │P .       7,106  06-12-91 04:48p
  88.  MEMDECSD.       6,777  06-13-91 │  Chat       │ER.       4,289  06-24-91 03:30p
  89.  MEMORY  .WP4   13,429  07-07-89 │  SetPrint   │TI.       9,765  06-13-91 01:15p
  90.  MEMSONGS.       5,679  06-05-91 │  EndSpool   │NK.       9,648  06-13-91 02:02p
  91.  MEMTOC  .       9,489  06-13-91 │  LastMsg    │V .       5,740  06-12-91 04:40p
  92.  MENU    .WP5   43,087  07-30-91 │  Send       │  .XXX   15,145  06-29-91 02:32p
  93.  MHSREUN .      11,665  04-16-91 ╘═════════1.02╛PT.WP5   22,481  01-08-91 11:33p
  94.  MODMENU .DOC   10,697  03-04-89 11:42p │ MODMENU .TXT   12,986  03-04-89 11:42p
  95.  MONTY   .WP5   11,322  01-30-91 07:41p │ MONTY2  .WP5   11,465  02-04-91 06:41p
  96.  MOUSE   .WPG    2,051  06-04-90 11:14a │ N       .         641  03-14-91 08:11p
  97.  NANCY   .WP5    7,706  06-13-90 10:35p │ NANCY1  .WP5    6,764  05-06-91 10:58p
  98.  NATL_COM.WP5    3,660  06-18-91 12:20a │ NETWORLD.       2,955  09-14-90 05:06p
  99.  NHANPHAN.WP5    5,832  02-22-91 11:50p │ NM1100  .WP5  121,126  08-20-90 01:03p
  100.  NS_2_AS .DOC   16,174  12-20-89 10:49a │ PARANET .WP5    3,296  07-09-91 01:53p
  101.  PCSTDTXC.       2,953  09-08-90 08:34p │ PCSTDTXC.DOC    4,096  09-08-90 04:47p
  102.  PCSTDTXC.WRD    3,328  09-08-90 04:44p │ PEER2PR .WP5   16,450  06-12-91 06:49p
  103.  
  104. 1 Retrieve; 2 Delete; 3 Move/Rename; 4 Print; 5 Short/Long Display;
  105. 6 Look; 7 Other Directory; 8 Copy; 9 Find; N Name Search: 6
  106.  
  107.  
  108.  
  109.  
  110.  
  111. Table of Contents
  112.  
  113.  
  114. 1   Preface . . . . . . . . . . . . . . . . . . . . . . .  1
  115.  
  116. 2   Quick Start . . . . . . . . . . . . . . . . . . . . .  2
  117.       What is TSR-Select? . . . . . . . . . . . . . . . .  2
  118.       Setting up TSR-Select . . . . . . . . . . . . . . .  2
  119.       Warnings and Restrictions . . . . . . . . . . . . .  3
  120.       How Do I Quick-Start? . . . . . . . . . . . . . . .  3
  121.  
  122. 3   What is TSR-Select? . . . . . . . . . . . . . . . . .  6
  123.       Summary Overview. . . . . . . . . . . . . . . . . .  6
  124.       Detail. . . . . . . . . . . . . . . . . . . . . . .  6
  125.       How TSR-Select Works. . . . . . . . . . . . . . . .  6
  126.       Memory Requirements . . . . . . . . . . . . . . . .  7
  127.  
  128. 4   How Does TSR-Select Work? . . . . . . . . . . . . . .  8
  129.       Summary Overview. . . . . . . . . . . . . . . . . .  8
  130.       Detail. . . . . . . . . . . . . . . . . . . . . . .  8
  131.       A Temporary Batch File Is Created . . . . . . . . .  8
  132.       Number of Selections. . . . . . . . . . . . . . . .  9
  133.  
  134. 5   Configuring TSR-Select. . . . . . . . . . . . . . .   11
  135.       Summary Overview. . . . . . . . . . . . . . . . .   11
  136.       Detail. . . . . . . . . . . . . . . . . . . . . .   11
  137.       TSR-Select Configuration File . . . . . . . . . .   12
  138.       Special character:  * . . . . . . . . . . . . . .   13
  139.       Special character:  $ . . . . . . . . . . . . . .   14
  140.       Special character:  < . . . . . . . . . . . . . .   15
  141.       Special character:  + . . . . . . . . . . . . . .   15
  142.       Special character:  @ . . . . . . . . . . . . . .   17
  143.       Special character:  > . . . . . . . . . . . . . .   18
  144.        what the menu will look like with the Viewer . .   19
  145.       Encrypt it with the SELECTC encryption selection.   19
  146.       Correct any errors reported by the encrypter. . .   20
  147.       Fully test the encrypted TSR-Select configuration file  20
  148.  
  149. 6   Installing TSR-Select . . . . . . . . . . . . . . .   22
  150.       Summary Overview. . . . . . . . . . . . . . . . .   22
  151.       Detail. . . . . . . . . . . . . . . . . . . . . .   22
  152.       Default Behavior of TSR-Select. . . . . . . . . .   22
  153.       Expanded Memory Load. . . . . . . . . . . . . . .   23
  154.       Disk Swap Load. . . . . . . . . . . . . . . . . .   23
  155.       Swap Files. . . . . . . . . . . . . . . . . . . .   24
  156.       Machine Lockups . . . . . . . . . . . . . . . . .   24
  157.       Forcing Swaps To Go To Disk . . . . . . . . . . .   25
  158.       Forcing Swaps To Go to RAM Disk . . . . . . . . .   25
  159.       Location of Configuration File. . . . . . . . . .   25
  160.       Avoiding The Need for /CA or /CN. . . . . . . . .   26
  161.       Multiple Configuration Files. . . . . . . . . . .   27
  162.       Why Not A Self-Modifying .EXE?. . . . . . . . . .   28
  163.       Activating TSR-Select From The DOS Prompt . . . .   29
  164.  
  165. 7   How the End-User Uses TSR-Select. . . . . . . . . .   31
  166.       What Happens If The Selection Is Not Available? .   31
  167.       Swapping Delays . . . . . . . . . . . . . . . . .   32
  168.       Auto-Load of TSR-Select Recommended . . . . . . .   32
  169.  
  170. 8   Unloading TSR-Select. . . . . . . . . . . . . . . .   33
  171.  
  172. 9   Warnings and Restrictions . . . . . . . . . . . . .   34
  173.       DOS Version Restrictions. . . . . . . . . . . . .   34
  174.       Well-Behaved Programs vs. Ill-Behaved Programs. .   34
  175.       Using TSR-Select At the DOS Prompt. . . . . . . .   34
  176.       Save the Foreground Data Before Activating TSR-
  177.            Select . . . . . . . . . . . . . . . . . . .   35
  178.       Loading TSR-Select in High Memory . . . . . . . .   35
  179.       The Loading Sequence for TSR-Select . . . . . . .   35
  180.       Loading TSR-Select Between the Network Shell and
  181.            Other Communications Programs. . . . . . . .   36
  182.       Interruption of the Socket Interface. . . . . . .   36
  183.       Is The DOS Prompt Active? . . . . . . . . . . . .   37
  184.       TSR-Select and the Graphics Mode. . . . . . . . .   37
  185.       Technical Info. . . . . . . . . . . . . . . . . .   37
  186.  
  187. 10  Known Problems with Version 1.0 and 1.01. . . . . .   39
  188.       Keyboard State. . . . . . . . . . . . . . . . . .   39
  189.       Screen State Restore. . . . . . . . . . . . . . .   39
  190.       Graphics Screen . . . . . . . . . . . . . . . . .   39
  191.  
  192. 11  TSR-Select License Information. . . . . . . . . . .   41
  193.       Distribution. . . . . . . . . . . . . . . . . . .   41
  194.       Definition of upgrade . . . . . . . . . . . . . .   42
  195.       Definition of technical support . . . . . . . . .   42
  196.       Backup. . . . . . . . . . . . . . . . . . . . . .   44
  197.  
  198. 12  If You Used TSR-Mail v2.x . . . . . . . . . . . . .   45
  199.       Summary Overview. . . . . . . . . . . . . . . . .   45
  200.       Detail. . . . . . . . . . . . . . . . . . . . . .   45
  201.  
  202. 13  The Temporary Batch File. . . . . . . . . . . . . .   46
  203.  
  204. Index . . . . . . . . . . . . . . . . . . . . . . . . .   49
  205.  
  206.  
  207.  
  208. 1   Preface
  209.  
  210.  
  211. Quadrant Computer System appreciates your trying TSR-Select, one of
  212. the most advanced methods of accessing other programs from inside
  213. your current program.  TSR-Select provides a low-cost method of
  214. allowing the user to access Program B while running Program A,
  215. without having to exit Program A.  TSR-Select uses swapping
  216. technology to accomplish this feat, but Program A is always the
  217. primary, foreground program.
  218.  
  219. TSR-Select is accompanied by the Integrated Configuration
  220. Environment, SELECTC, a tool for creating customized TSR-Select
  221. configuration files.  This environment contains an editor, viewer,
  222. encrypter and decrypter.
  223.  
  224. TSR-Select will operate on either stand-alone PCs, or on PCs that are
  225. networked together using Novell Netware, Banyan VINES, Microsoft
  226. LAN Manager, LANtastic, or any other network operating system
  227. that emulates MS-DOS.  MS-/PC-DOS 3.0 or above is required on
  228. the client PC.
  229.  
  230. This manual is strictly intended -- and written for -- the network
  231. administrator or PC support person.  The end-user can benefit
  232. primarily from the details in Sections 7 and 8.  It is also the
  233. responsibility of the administrator to ensure that all precautions are
  234. taken to prevent unnecessary problems while the end-user has
  235. TSR-Select in memory.
  236.  
  237. While you are working with TSELECT, use the TSELECT /?
  238. command to bring up an abbreviated list of the legal command line
  239. options and environment variables.
  240.  
  241. I hope you enjoy using TSELECT.
  242.  
  243.                                Robert Laird - August 1, 1991
  244.  
  245.  
  246.  
  247. 2   Quick Start
  248.  
  249.  
  250. What is TSR-Select?
  251.  
  252. This manual explains what TSR-Select is, and how it works.
  253.  
  254. TSR-Select is a menu program that will pop-up inside any non-graphic
  255. program, and is activated with a hot-key.  When activated, the
  256. foreground program is swapped to disk or EMS memory, and presents
  257. a menu of choices to the user.  When the user chooses a program on
  258. the menu, that program is loaded into memory and executed.  When
  259. that program is exited, the TSR-Select menu is once again presented
  260. to the user.  If the user chooses another program, that program is
  261. loaded into memory and executed... and so forth.  When the user
  262. wants to return to the original foreground program, they press [ESC]
  263. at the TSR-Select menu.  TSR-Select then swaps the original program
  264. back into memory, and goes dormant until the next time the hot-key
  265. is pressed.
  266.  
  267.  
  268. Setting up TSR-Select
  269.  
  270. One of the most important parts of setting up TSR-Select, is creating
  271. the configuration file.  Creation of the configuration file is not
  272. intended for the end-user, but for a local-area-network administrator
  273. or PC support personnel.  There is plenty of technical information
  274. written on each subject, and each section starts with an overview.
  275. This overview is intended as a "quick-start" for knowledgeable
  276. administrators or support persons.  At the end of this manual is a
  277. separate section that is designed to be a stand-alone section
  278. specifically for the end-user.
  279.  
  280.  
  281.  
  282.  
  283.  
  284. Warnings and Restrictions
  285.  
  286. Throughout this manual there are many warnings and restrictions
  287. regarding the use of TSR-Select.  Please do not be concerned about
  288. the reliability of TSR-Select; it has been in use by over 5,000 active
  289. network users since November 1990 and there have been no reported
  290. problems attributable to TSR-Select.  However, these users have been
  291. well versed as to the strengths and weaknesses of TSR-Select and they
  292. are careful to follow the guidelines.  These guidelines are necessary
  293. due to the nature of actively using a swappable TSR inside a MS/PC-
  294. DOS environment.  The authors of DOS will tell you flat out that
  295. "...it ain't supposed to work..."; but it does work and it is reliable
  296. when used by an educated user.  It is absolutely critical that you learn
  297. the rules for configuration, and follow them explicitly.  There are also
  298. caveats about which programs to let the user run via TSR-Select.
  299.  
  300.  
  301. How Do I Quick-Start?
  302.  
  303. Well, you know what I'm going to say to do first:  Read the manual!
  304. If you are a network administrator or PC support person, then
  305. practice what (I hope) you preach!
  306.  
  307. However, if you are the anxious type, then read the next three
  308. paragraphs very carefully.
  309.  
  310. Start off by running SELECTC.EXE.  This is the integrated
  311. configuration environment (ICE).  (SELECTC and ICE should be
  312. treated as synonyms in this manual.)  It contains an editor that will let
  313. you create your configuration files.  The raw configuration files are
  314. plain ASCII text files, but the TSR-Select programs (TSELECT.EXE
  315. and TSELECTM.EXE) will not read them.  The raw configuration
  316. files must be encrypted first.  Encryption is done in the ICE, as well.
  317. The ICE also contains a Viewer.  The Viewer lets you see how the
  318. menu will look; you won't have to go to the trouble of encrypting the
  319. raw configuration file, then loading TSELECT to see how it will
  320. look.  And, in case you lose your raw configuration file, you can
  321. Decrypt an encrypted configuration file in the ICE.
  322.  
  323.  
  324.                        SELECTC Screen
  325.  
  326. ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  327. ▒▒▒▒▒▒▒▒▒▒▒▒▒╒═══════ Integrated Configuration Environment ═══════╕▒▒▒▒▒▒▒▒▒▒▒▒▒
  328. ▒▒▒▒▒▒▒▒▒▒▒▒▒│     Encrypt    Decrypt    View    Edit    Quit     │▒▒▒▒▒▒▒▒▒▒▒▒▒
  329. ▒▒▒▒▒▒▒▒▒▒▒▒▒╘════════════════════════════════════════════════════╛▒▒▒▒▒▒▒▒▒▒▒▒▒
  330. ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  331. ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  332. ▒▒▒▒▒▒╒══════════ Encryption ══════════╕▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  333. ▒▒▒▒▒▒│                                │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  334. ▒▒▒▒▒▒│ Encrypt TSELECT.CFG to TSRSCFG │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  335. ▒▒▒▒▒▒│ Specify Different File Names   │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  336. ▒▒▒▒▒▒│                                │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  337. ▒▒▒▒▒▒╘════════════════════════════════╛▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  338. ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  339. ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  340. ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  341. ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  342. ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  343. ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  344.  Encrypt the text configuration file                 Quadrant Computer Systems
  345.  
  346.  
  347. Creating and/or modifying a configuration file isn't difficult, but there
  348. is a specific syntax you will have to learn.  The syntax is also very
  349. easy to learn and very simple.  If you know the DOS batch language,
  350. then you've got 99% of it down already because TSR-Select merely
  351. executes DOS batch files.  The configuration file simply puts those
  352. DOS batch files into one convenient file.  Most, if not all, menu
  353. systems for DOS work the same way.  The sample configuration file
  354. that comes with TSR-Select contains many comments that explain the
  355. syntax.
  356.  
  357.  
  358.  
  359.                 Help Screen in SELECTC Editor
  360.  
  361.                                                               Press F1 for Help
  362.  TSELECT╒═════════════════════ Editor Help ══════════════════════╕ent
  363. .......T│ ESC - Exit, no save (confirm req'd if changes made)    │....
  364. .       │ F1  - Help                                             │
  365. .      Q│ F2  - Save changes, remain in editor                   │
  366. .       │ F3  - Choose another file to edit                      │
  367. .All lin│ F7  - Begin block                                      │
  368. .Blank l│ F8  - End block                                        │
  369. .       │                                                        │
  370. .  If yo│ Ctrl-K X  - Save and exit                              │e,
  371. .  and t│ Ctrl-Y    - Delete line                                │ing,
  372. .  any c│ Ctrl-Q Y  - Delete from cursor to the end of line      │
  373. .       │ Ctrl-T    - Delete word                                │
  374. .       │ Ctrl-K R  - Reads in a file to the cursor position     │
  375. .      F│ Ctrl-Q F  - Search                                     │
  376. .       │ Ctrl-Q A  - Search and Replace                         │
  377. .     Me│ Ctrl-L    - Search again, or search/replace again      │
  378. .       │                                                        │ed.
  379. .       │ This editor uses most of the standard WordStar         │p to 30.
  380. .       │ or SideKick editor commands.                           │
  381. .     Sh│                                                        │
  382. .       │                                                        │
  383. .     Al│             Press any key to continue.                 │
  384. .       ╘════════════════════════════════════════════════════════╛
  385. .     All commands required after the executable begin with >
  386.  
  387. Once you've created your configuration file, then encrypt it, exit
  388. SELECTC (ICE), then run TSELECT.EXE.  TSELECT will read the
  389. encrypted default configuration file, and you are ready to test it.
  390. (TSR-Select was not originally designed to operate from the DOS
  391. prompt... it is not a menuing system in the conventional sense.  It
  392. was designed from the ground up to be run while another program is
  393. running.)  So, now you can test it by running another program, then
  394. hitting the hot-key for TSR-Select, [Alt]-[LeftShift]-[M].
  395.  
  396. You are then presented with the menu of choices that you
  397. programmed into it.  Select each program to verify that they all work
  398. properly.
  399.  
  400. To fully understand and benefit from the flexible way that TSR-Select
  401. was designed, you should definitely read the remainder of this
  402. manual!
  403.  
  404.  
  405.  
  406.  
  407. 3   What is TSR-Select?
  408.  
  409.  
  410. Summary Overview
  411.  
  412. TSR-Select is a TSR (memory resident program) that is designed to
  413. be executed from within a standard, well-behaved, character-based
  414. application such as Word Perfect, dBASE or Lotus 2.01.  Activating
  415. TSR-Select displays a menu, allowing you to run another program,
  416. without having to exit the original application.  After loading TSR-
  417. Select, only 8K of conventional memory is used.  TSR-Select can be
  418. configured with up to 15 programs.  Please read the section on
  419. Configuring TSR-Select before using.
  420.  
  421.  
  422. Detail
  423.  
  424. Let's say you want to run a network mail program while in Word
  425. Perfect.  Loading Word Perfect into memory takes about 400K of
  426. memory.  After accounting for DOS and the network shell, there is
  427. probably not enough memory remaining to shell to DOS from Word
  428. Perfect and then load and run network mail.  But by using TSR-
  429. Select, you will be able to access network mail, and any other
  430. program you configure.
  431.  
  432. If TSR-Select were loaded before Word Perfect, pressing the "hot-
  433. key" - [Alt]-[LeftShift]-[M] - would present you with a menu which
  434. includes "MAIL".  Choosing that option will run MAIL, even though
  435. there appeared to be insufficient memory space.
  436.  
  437.  
  438. How TSR-Select Works
  439.  
  440. TSR-Select performs this magical feat by swapping the original
  441. program instructions and data code from conventional memory to
  442. either EMS memory or the hard disk.  Then enough conventional
  443. memory is released to allow you to execute another program such as
  444. MAIL.  When you are finished running TSR-Select, the original
  445. program code and data are then swapped back into conventional
  446. memory, exactly where you were when you activated TSR-Select.
  447.  
  448.  
  449. Memory Requirements
  450.  
  451. TSR-Select needs about 8K of normal DOS memory when it goes
  452. resident, but can provide up to about 550K of free memory space
  453. when it runs another program.  If there is a network shell present or
  454. other TSR programs, the total free memory will be 550K minus the
  455. size of the network shell.  (Note: These numbers do not reflect what
  456. memory managers -- such as those found in 386Max, QEMM or DOS
  457. 5.x -- may reclaim from XMS or high memory.)
  458.  
  459. TSR-Select is a swappable TSR: when its hot key is pressed, TSR-
  460. Select swaps out the application loaded after it and swaps itself in.
  461. So, even though TSR-Select requires only 8K of conventional memory
  462. when "dormant," it may take up about 35K of memory when active.
  463.  
  464. The application you run from TSR-Select must be able to load and
  465. run in whatever space is left after TSR-Select is swapped into
  466. memory.
  467.  
  468. If you use a memory manager on a 80386 or higher CPU-based PC,
  469. you cannot load TSR-Select in high memory.
  470.  
  471.  
  472.  
  473. 4   How Does TSR-Select Work?
  474.  
  475.  
  476. Summary Overview
  477.  
  478. As mentioned before, TSR-Select is a swappable TSR: when its hot
  479. key is pressed, TSR-Select swaps out the application loaded after it
  480. and swaps itself in.  So even though TSR-Select requires only 8K of
  481. conventional memory when "dormant," when active, it may take up
  482. about 35K of memory.  When active, a menu is created based on
  483. information in a configuration file.  That information is stored in
  484. memory when TSR-Select is first loaded.  When activated TSR-Select
  485. displays a menu as specified by the configuration information.  When
  486. a menu selection is chosen, a temporary batch file is created and
  487. TSR-Select then executes that batch file.  When the batch file is
  488. completed, TSR-Select retakes control and re-displays the TSR-Select
  489. menu.  Pressing ESC will return the user back to the foreground
  490. application.
  491.  
  492.  
  493. Detail
  494.  
  495. When loaded for the first time, TSR-Select reads a configuration file
  496. (see Configuring TSR-Select, below).  This configuration file contains
  497. all the information needed to create a menu selection, and the
  498. instructions on what to do when the user selects that menu selection.
  499.  
  500.  
  501. A Temporary Batch File Is Created
  502.  
  503. When a selection is chosen, TSR-Select creates a temporary batch file
  504. on disk, then executes that batch file (see the section on the temporary
  505. batch file at the end of this manual).  All control is handed over to
  506. that temporary batch file by way of a secondary COMMAND
  507. processor.  When the batch file completes its instructions, TSR-Select
  508. once again takes control and re-displays the TSR-Select menu.
  509.  
  510.  
  511. Number of Selections
  512.  
  513. If only one menu item has been configured, the TSR-Select menu
  514. does not display.  The user is taken directly into the selection and,
  515. when complete, is returned directly to the foreground program.
  516.  
  517. A maximum of 15 selections are available to be configured.
  518.  
  519.  
  520. There are several dangerous situations that can occur while the TSR-
  521. Select created batch file is executing.  Here are two of the most
  522. serious situations.
  523.  
  524.  
  525.   1.  The batch file is deleted.  The temporary batch file is created
  526.       by TSR-Select and contains instructions to execute a program.
  527.       If the program were dBASE, for example, the user could shell
  528.       to DOS and delete the batch file.  If this happens and the user
  529.       is lucky, when they exit the program, and the batch file tries to
  530.       continue, the user will see a "Batch File Missing" error, and
  531.       TSR-Select will take back control and re-display the TSR-Select
  532.       menu.  However, if the user is not so lucky, after the "Batch
  533.       File Missing" error, the PC could lock-up, requiring a cold
  534.       boot, and likely causing memory data loss.  There are many
  535.       reasons why one or the other may happen, all depending on the
  536.       memory configuration and status at the moment the secondary
  537.       COMMAND processor finds out the batch file is missing.
  538.       Consequently, the actual result is unpredictable.  This problem
  539.       only becomes more complicated if you are using a memory
  540.       manager such as 386Max, QEMM or the one found in DOS
  541.       5.x.
  542.  
  543.  
  544.   2.  Low-level disk modifications are made.  Do NOT attempt to
  545.       use TSR-Select to execute a program that makes low-level
  546.       modifications to the DOS file system.  Programs to avoid
  547.       include CHKDSK, disk de-fragmenters, and physical directory
  548.       sorters like Norton's DIRSORT.  Using any program that does
  549.       low-level DOS file modifications could result in a total,
  550.       unrecoverable hard disk crash.  This is a good reason why you
  551.       should not have an option in TSR-Select that lets the user get
  552.       control of the DOS prompt via a secondary COMMAND
  553.       processor.
  554.  
  555.  
  556. Any attempt to load TSR-Select twice will fail, gracefully.
  557.  
  558.  
  559.  
  560.  
  561.  
  562. 5   Configuring TSR-Select
  563.  
  564.  
  565. Summary Overview
  566.  
  567. NOTE:  Although creating a TSR-Select configuration file is quite
  568. easy, there are quite a few situations you must learn to avoid.  It is
  569. strongly recommended that you read this entire chapter before
  570. proceeding.
  571.  
  572. As the network administrator or PC support person, you will find it
  573. quite easy to create a configuration file for TSR-Select.  An example
  574. configuration file is included with the program files, and the many
  575. comments throughout will help you create your own TSR-Select
  576. TSELECT.CFG file.  The default name for the configuration file is
  577. "TSELECT.CFG", although this can be changed.  It can be created
  578. with any standard text editor, or word processing program that can
  579. produce standard DOS text files.  However, a fully functional text
  580. editor is provided in the Integrated Configuration Environment (ICE).
  581. When the internal editor is activated, it automatically looks for and
  582. opens the TSELECT.CFG text file.
  583.  
  584. Once the file is finished, it must be encrypted by the TSR-Select
  585. encrypter, inside the ICE.  The ICE program, called SELECTC.EXE,
  586. creates a file that is readable by TSR-Select, and places it in the
  587. specified directory.  It is strongly recommended that you do not allow
  588. the end-user access to the TSR-Select ICE.  If there are errors in your
  589. text file, they will be pointed out so you can correct them.  (This last
  590. feature is not available in version 1.0 or 1.01.)
  591.  
  592.  
  593. Detail
  594.  
  595. There are four basic steps for creating a useable TSR-Select
  596. configuration file:
  597.  
  598.       1.   Create the plain DOS text configuration file and view it.
  599.       2.   Encrypt the configuration file.
  600.       3.   Correct any errors reported by the encrypter.
  601.       4.   Fully test the encrypted TSR-Select configuration file.
  602.  
  603. Step one, in a sense, is the most complex because there are many
  604. rules and guidelines you must understand prior to encrypting.  Steps
  605. 2 through 4 are simply the steps needed to test and implement the
  606. results of Step 1.
  607.  
  608.       Step 1.  TSR-Select Configuration File
  609.  
  610.       The TSR-Select configuration file, TSR-Select.CFG, consists
  611.       of at least one but no more than fifteen groups of data.  Each
  612.       group is called a "chunk" and each chunk represents all the
  613.       information needed by the SELECTC encrypter to create a
  614.       readable file for TSR-Select.  Comment lines may also exist
  615.       throughout the TSELECT.CFG file, either between chunks, or
  616.       within them.  The total number of non-comment lines allowed
  617.       is 500.  There is no specific limitation per chunk (per
  618.       selection), as long at there are no more than 15 selections, and
  619.       no more than 500 lines of non-comment command lines.
  620.  
  621.       A.  Using an editor to create TSELECT.CFG.  The TSR-Select
  622.       configuration file you create must be a standard DOS text file.
  623.       Included in the ICE environment is an editor.  You may use
  624.       this editor to create and edit TSELECT.CFG, or you may use
  625.       any plain DOS text editor, or you may use any word processor,
  626.       e.g. Word Perfect, which allows you to save your file as plain
  627.       DOS text.  (The ICE editor uses standard WordStar commands,
  628.       the same commands used in Borland's SideKick notepad.
  629.       Pressing F1 while in the editor will provide you with an
  630.       abbreviated help screen.)
  631.  
  632.       B.  Comment lines allowed in TSELECT.CFG.  As you create
  633.       your master copy of TSELECT.CFG, you may find it
  634.       convenient to store comments throughout the file.  To do this,
  635.       start the comment line with a period (".") in the very first
  636.       column, column 1.  Also, comments on the same line are
  637.       allowed by using a semicolon (";").  Anything after and
  638.       including the semicolon are ignored by the encrypter.  You
  639.       will see many comment lines used throughout the example
  640.       configuration file.
  641.  
  642.       C.  Special characters.  There are six special characters used by
  643.       SELECTC to configure the structure of the menu selections and
  644.       commands: "*", "$", "<", "+", "@" and ">".  These
  645.       characters must be in column 1 of the text file, and you must
  646.       use only one of these characters per line.  If the SELECTC
  647.       encrypter finds a line that does not begin with one of these six
  648.       characters, or a period or semicolon, an error will be
  649.       generated.
  650.  
  651.  
  652.            Special character:  *
  653.  
  654.            The asterisk ("*") character is used to identify the name
  655.            of the menu selection.  For example, if you wanted to
  656.            run dBASE as a selection, and you wanted the user to
  657.            see "dBASE", then the first line of a menu selection
  658.            would look like this:
  659.  
  660.                                        *dBASE
  661.  
  662.            Not including the asterisk, the total number of characters
  663.            allowed is thirty.  Although no error will be generated by
  664.            the SELECTC encrypter if more than thirty characters
  665.            are used, the name will be truncated to the first thirty
  666.            characters.  There are no other restrictions; any character
  667.            that can be displayed on the screen (except for a
  668.            semicolon) is valid.  This entry always signals the
  669.            beginning of a selection "chunk" in the TSELECT.CFG
  670.            file.  For example, if there were a selection chunk prior
  671.            to the "dBASE" selection, then the line before "*dBASE"
  672.            would be - by definition - the last line in that previous
  673.            chunk.  (These "chunks" are essentially DOS batch files,
  674.            embedded with special characters.)
  675.  
  676.  
  677.            Special character:  $
  678.  
  679.            The dollar-sign ("$") character is used to identify the
  680.            short-cut character or key in the name of the menu
  681.            selection.  A number should follow the "$" character,
  682.            indicating which character is to be highlighted.  For
  683.            example, if you wanted the letter "d" in "dBASE" to be
  684.            the short-cut key, then you would place the line:
  685.  
  686.                                  $1
  687.  
  688.            on the line following "*dBASE".  The short-cut key is
  689.            highlighted when the TSR-Select menu is displayed.  It
  690.            is a short-cut key because by pressing the highlighted
  691.            character, the user can execute that selection without
  692.            having to move the highlight bar to the selection and
  693.            press [ENTER].  If a short-cut specification is left out,
  694.            the first character will be used.
  695.  
  696.            WARNING:  If the character chosen competes with
  697.            another menu selection with the same short-cut key,
  698.            when the user presses the key, only the first selection
  699.            will ever be selected.  The only way for the other
  700.            selection to be executed is if the user highlights it and
  701.            presses [ENTER].
  702.  
  703.            As another example, if the user wanted the "S" in
  704.            "dBASE" (the 4th character) to be the shortcut key, then
  705.            use:  $4
  706.  
  707.  
  708.            Special character:  <
  709.  
  710.            The less-than ("<") character is used to identify the lines
  711.            of the batch file that will occur prior to the line that
  712.            executes a program.  There may be many lines which use
  713.            the "<" character.  And, although these lines may
  714.            contain instructions to execute other .COM and .EXE
  715.            programs, they are still indicating all the tasks that lead
  716.            up to the primary task, that of executing the line with the
  717.            "+" character.  No error checking or file verification is
  718.            done on any programs that may be executed by these
  719.            lines.
  720.  
  721.  
  722.            Special character:  +
  723.  
  724.            The plus ("+") character is used to identify the program
  725.            which is to be executed in order to fulfill the request the
  726.            user has made by selecting an item off the TSR-Select
  727.            menu.  (To execute internal DOS programs, see "@"
  728.            below.)  In any menu selection chunk inside of
  729.            TSELECT.CFG, there should only be one "+" line (or
  730.            just one "@" line, if it is an internal DOS command).  In
  731.            the example using DBASE, this line would look
  732.            something like this:
  733.  
  734.                       +C:\DBASE\DBASE.EXE
  735.  
  736.            It must be the fully qualified drive, path, and file name,
  737.            including extension.  The only exception to this rule is if
  738.            the command is an internal DOS command, such as
  739.            "DIR."  Parameters required to accompany the command
  740.            are allowed to be on the same line, just as if you were
  741.            executing the command from the DOS command line.
  742.  
  743.            For example, if you wanted to run DBASE and load the
  744.            PROJECTX.PRG program at the same time, then the line
  745.            would look something like this:
  746.  
  747.                       +C:\DBASE\DBASE.EXE PROJECTX
  748.  
  749.            Examples that would not be valid include:
  750.  
  751.            +C:DBASE.EXE PROJECTX            {not a fully qualified path}
  752.  
  753.            +C:\DBASE\DBASE PROJECTX         {no extension specified}
  754.  
  755.            +DBASE.EXE PROJECTX              {no path}
  756.  
  757.            Before being executed, all programs are verified to exist
  758.            by way of a function inside of TSR-Select.  Executing a
  759.            program that is not found will result in an error message.
  760.            If for some reason you do not want TSR-Select to check
  761.            for the existence of the program file prior to execution,
  762.            you can use the "@" special character (see below).
  763.            However, if the program were not found, and you use
  764.            the "@" character, the user will receive a "Bad command
  765.            or file name" error message and be put back to the TSR-
  766.            Select menu without much of a clue as to what happened.
  767.            Use of the "+" special character will ensure cleaner
  768.            execution of programs.  It also helps to keep the person
  769.            doing the configuration from forgetting something.
  770.  
  771.            WARNING:         Do NOT attempt to use TSR-Select to
  772.                             execute a program that makes
  773.                             low-level modifications to the DOS
  774.                             file system.  Programs to avoid
  775.                             include CHKDSK, disk
  776.                             de-fragmenters, and physical
  777.                             directory sorters like Norton's
  778.                             DIRSORT.  Using any program that
  779.                             does low-level DOS file modifications
  780.                             could result in a total, unrecoverable
  781.                             hard disk crash.
  782.  
  783.  
  784.            Special character:  @
  785.  
  786.            The at-sign ("@") character is used to identify the
  787.            internal DOS program which is to be executed in order
  788.            to fulfill the request the user has made by selecting an
  789.            item off the TSR-Select menu.  (To execute non-internal
  790.            DOS programs, see the section on "+", before this one.)
  791.            In any menu selection chunk inside of TSELECT.CFG,
  792.            there should only be one "@" line (or just one "+" line,
  793.            if it is an external program).  Parameters required to
  794.            accompany the command are allowed to be on the same
  795.            line, just as if you were executing the command from the
  796.            DOS command line.  For example, if you wanted a TSR-
  797.            Select menu selection to view all the .BAT files on the
  798.            root directory of drive C:, and you wanted the listing to
  799.            pause after 25 displayed lines, the following example
  800.            would perform that task:
  801.  
  802.                       @DIR C:\*.BAT /p
  803.  
  804.            You are required to verify that the specified internal
  805.            DOS command will work properly.
  806.  
  807.  
  808.  
  809.  
  810.  
  811.            Special character:  >
  812.  
  813.            The greater-than (">") character is used to identify the
  814.            lines of the batch file that will occur after the line that
  815.            executes a program.  There may be many lines which use
  816.            the ">" character.  And, although these lines may
  817.            themselves contain instructions to execute other .COM
  818.            and .EXE programs, they are still indicating all the tasks
  819.            that must occur after the primary program was finished
  820.            executing.  No error checking or file verification is done
  821.            on any programs that may be executed by these lines.
  822.  
  823.       Here is an example of a valid TSELECT.CFG file:
  824.  
  825. .Comment lines start with a period (".")
  826. .This first chunk runs dBASE
  827. *dBASE                  ; the title of the selection
  828. $1                      ; the 1st character ("d") is the short-cut
  829. <ECHO OFF
  830. <CLS
  831. <SET OPATH=%PATH%
  832. <PATH C:\DBASE;%PATH%
  833. <C:
  834. <CD \DATA\DBASE
  835. +C:\DBASE\DBASE.EXE     ; a fully qualified path and filename w/ext.
  836. >PATH %OPATH%
  837. >SET OPATH=
  838. .
  839. .The next chunk lets us run MAPMEM to look at what's in memory
  840. *MapMem                 ; the title of the selection
  841. $3                      ; the 3rd character ("p") is the short-cut
  842. <ECHO OFF
  843. <CLS
  844. +C:\UTIL\MapMem.EXE     ; note that the ".EXE" is included
  845. <pause                  ; using a DOS PAUSE is helpful here
  846. .
  847. .This third chunk looks at the batch files in the directory of C:\
  848. *DIR of C               ; the title of the selection
  849. $1                      ; the 1st character("D") is the short-cut
  850. <ECHO OFF
  851. <CLS
  852. @DIR C:\*.BAT /p        ; use "@" ; DIR is an internal DOS command
  853.  
  854.  
  855.  
  856.       Step 2.   View what the menu will look like with the Viewer.
  857.  
  858.                 The SELECTC Viewer In Action
  859.  
  860. ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  861. ▒▒▒▒▒▒▒▒▒▒▒▒▒╒═══════ Integrated Configuration Environment ═══════╕▒▒▒▒▒▒▒▒▒▒▒▒▒
  862. ▒▒▒▒▒▒▒▒▒▒▒▒▒│     Encrypt    Decrypt    View    Edit    Quit     │▒▒▒▒▒▒▒▒▒▒▒▒▒
  863. ▒▒▒▒▒▒▒▒▒▒▒▒▒╘════════════════════════════════════════════════════╛▒▒▒▒▒▒▒▒▒▒▒▒▒
  864. ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  865. ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒╒═TSR-SELECT══╕▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  866. ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│ >Mail<      │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  867. ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│  Chat       │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  868. ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│  SetPrint   │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  869. ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│  EndSpool   │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  870. ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│  LastMsg    │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  871. ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒│  Send       │▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  872. ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒╘════════v 1.0╛▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  873. ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  874. ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  875. ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  876. ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  877. ▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒▒
  878.  View what the menu will look like.                  Quadrant Computer Systems
  879.  
  880.       The SELECTC Viewer will allow you to preview what the
  881.       TSR-Select menu will look like.  You do not have to encrypt
  882.       the configuration file to use the Viewer.  As soon as you are
  883.       finished making a change to the configuration file in the Editor,
  884.       press [ESC] to return to the SELECTC main menu, the press
  885.       [V] to View the results.  View reads the un-encrypted
  886.       configuration file directly, then interperts the contents.  If you
  887.       don't like what you see, simple re-enter the editor and make the
  888.       changes.
  889.  
  890.  
  891.       Step 3.   Encrypt it with the SELECTC encryption selection.
  892.  
  893.       The encryption option of SELECTC.EXE is designed to read
  894.       in the lines of the configuration file you have created, and
  895.       create another file that is to be read by TSR-Select, when
  896.       TSELECT is first loaded into memory.
  897.  
  898.       The default name of the configuration file you create for
  899.       SELECTC is TSELECT.CFG.  The default name of the
  900.       compiled configuration file that SELECTC creates is
  901.       TSRSCFG.<Alt-255>.  These names can be changed, if
  902.       desired, but it is unlikely you will ever need to.  (The
  903.       <Alt-255> signifies a character that looks like a blank, or
  904.       space, on the screen, but is really the ASCII character 255.
  905.       You can create that character by pressing down, and holding
  906.       down, the [Alt] key, while typing [2] [5] [5] on the numeric
  907.       keypad, then releasing the [Alt] key.)
  908.  
  909.       Although the process that SELECTC performs is complex, it
  910.       works very fast.  You may think that, because it worked so
  911.       fast, it did not work at all.  Each time a line is compiled, a
  912.       counter on the screen will update.  If there are no errors,
  913.       SELECTC will report that there were none, and that TSRSCFG
  914.       was created successfully.
  915.  
  916.       If there are errors, SELECTC will generate verbose listings of
  917.       the errors, why they were caused and suggest how to correct
  918.       them.  (Error generation is not yet available in versions prior
  919.       to 1.10... all subsequent references in this manual to error
  920.       detection apply to version 1.10 and above.)
  921.  
  922.       If you have placed more than 15 entries in the TSELECT.CFG
  923.       file, all entries after the 15th entry will be ignored and no
  924.       encrypter error message is generated.
  925.  
  926.  
  927.       Step 4.   Correct any errors reported by the encrypter.
  928.  
  929.       This is just a matter of going back into the editor and making
  930.       whatever changes may be required.
  931.  
  932.  
  933.       Step 5.   Fully test the encrypted TSR-Select configuration file.
  934.  
  935.       It is critical that you run the final version of your configuration
  936.       on a real users PC, running a full-fledged program such as
  937.       Word Perfect.  Each program on the TSR-Select menu should
  938.       be tested and verified that it returns properly.
  939.  
  940.  
  941.  
  942.  
  943. 6   Installing TSR-Select
  944.  
  945.  
  946. Summary Overview
  947.  
  948. When installed, TSR-Select will use either EMS memory (if available)
  949. or disk space (if EMS is not available) for its swapping medium.  To
  950. install TSR-Select, type:  TSR-Select  at the DOS prompt.  If
  951. TSR-Select cannot find the configuration file, an error message will
  952. be generated and the loading process will stop.  TSR-Select can be
  953. told where the configuration file is by using either special DOS
  954. environment variables, or by specifying the alternative location as
  955. parameters on the command line that loads TSR-Select (see below).
  956. To activate TSR-Select, once loaded, use the hot key:  [Alt]-
  957. [LeftShift]-[M].
  958.  
  959.  
  960. Detail
  961.  
  962. TSR-Select will use either EMS memory or disk space for its
  963. swapping medium.  When using EMS, it consumes about X+45
  964. kilobytes of EMS (rounded up to the nearest 16K boundary), where
  965. X is the amount of RAM to be free when the TSR-Select shell starts.
  966. When using disk space, it uses about 2*(X+15)+30 kilobytes of disk
  967. space.  If you choose to have TSR-Select use a RAM drive as the
  968. swap area, then the X+45Kb rule applies.
  969.  
  970.  
  971. Default Behavior of TSR-Select
  972.  
  973. You can install TSR-Select simply by typing its name at the DOS
  974. command line.  It provides the following default behavior:
  975.  
  976.      it looks for the configuration file, TSRSCFG.<Alt-255>, in
  977.       the default directory.
  978.  
  979.      all RAM that is free at the time TSR-Select is loaded, less
  980.       about 35K will be available to the TSR-Select shell.
  981.  
  982.      EMS memory, if available, will be used for swap space.
  983.  
  984.      dual swap files located in the root directory of the C: drive will
  985.       be used if EMS is not available.
  986.  
  987.      swap files will be marked hidden,system.
  988.  
  989.      hot key will be [Alt]-[LeftShift]-[M].
  990.  
  991.  
  992. Expanded Memory Load
  993.  
  994. If you have Expanded Memory (EMS) active in your PC, TSR-Select
  995. will take advantage of it, and the swap time will be dramatically
  996. decreased.  Upon loading TSR-Select, if it finds EMS memory, you
  997. will see something like this:
  998.  
  999. ╔═══════════════════════════════════════════════════════════════════════════╗
  1000. ║ TSR-Select  -*- version 1.0 -*- Copyright 1991 Quadrant Computer Systems  ║
  1001. ╚╤══════════════════════════════════════════════════════════════════════════╝
  1002.  │ <your company name>
  1003.  └──────────────────────────────
  1004.  
  1005. Using EMS for swapping.
  1006. Going resident, <Alt-LeftShift-M> to popup...
  1007.  Approximate memory available for program use = 443352
  1008.  
  1009.  
  1010. Disk Swap Load
  1011.  
  1012. If you do not have EMS memory available, you will need
  1013. approximately 1.2Mb of disk space available at all times.  TSR-Select
  1014. will swap-to-disk, and the swap time will take anywhere from 2
  1015. seconds to 20 seconds, depending on the type of PC and the speed of
  1016. your hard disk.  Upon loading TSR-Select, if there is no EMS
  1017. memory, you will see something like this:
  1018.  
  1019. ╔═══════════════════════════════════════════════════════════════════════════╗
  1020. ║ TSR-Select  -*- version 1.0 -*- Copyright 1991 Quadrant Computer Systems  ║
  1021. ╚╤══════════════════════════════════════════════════════════════════════════╝
  1022.  │ <your company name>
  1023.  └──────────────────────────────
  1024.  
  1025.  Swap will require 1173888 bytes of disk space.
  1026. Going resident, <Alt-LeftShift-M> to popup...
  1027.  Approximate memory available for program use = 443352
  1028.  
  1029. When EMS memory is not available, TSR-Select normally uses three
  1030. swap files. Two of the files are used to activate the swappable TSR.
  1031. The first such file holds the TSR-Select code and data and the other
  1032. one holds the memory contents that TSR-Select overwrites. The third
  1033. file is used for the TSR-Select shell itself and consumes about 30K
  1034. bytes, which is typically much smaller than the first two.
  1035.  
  1036.  
  1037. Swap Files
  1038.  
  1039. TSR-Select cannot delete the swap files if you turn the machine off
  1040. while TSR-Select is loaded; however, it will correctly overwrite them
  1041. the next time it's loaded again.
  1042.  
  1043.  
  1044. Machine Lockups
  1045.  
  1046. WARNING:  If data in the foreground program was not saved at the
  1047. time TSR-Select is activated, and a machine lock-up occurs, there is
  1048. no mechanism available with TSR-Select to restore the data.  TSR-
  1049. Select users should be reminded to save the foreground programs'
  1050. data prior to activating TSR-Select.
  1051.  
  1052.  
  1053. Forcing Swaps To Go To Disk
  1054.  
  1055. If EMS memory is available but you do not want TSR-Select to
  1056. automatically use it, use the '/D' switch when loading TSR-Select:
  1057.  
  1058.            TSELECT /D
  1059.  
  1060. This switch will force TSR-Select to use the disk for swapping.
  1061.  
  1062.  
  1063. Forcing Swaps To Go to RAM Disk
  1064.  
  1065. If you would prefer to use a RAM disk as the swap disk, use the
  1066. "/SD:<drive>" switch when loading TSR-Select:
  1067.  
  1068.            TSELECT /SD:D:\
  1069.  
  1070. would make the RAM disk drive D:\ the swap disk.  Make sure that
  1071. the RAM disk has at least 1Mb of memory available to it.
  1072.  
  1073.  
  1074. Location of Configuration File
  1075.  
  1076. If the configuration file will not be on the default drive (which will
  1077. most always be the case when used with a network, and many users
  1078. will be accessing the same configuration), then the following methods
  1079. can be used for specifying where the configuration file will be:
  1080.  
  1081. Method 1:  Using DOS environment variables.
  1082.  
  1083.       The DOS environment is checked during TSR-Select load time
  1084.       for the variable, TSRS_CA.  If it exists and it specifies a valid
  1085.       directory, that will become the default directory, over-riding
  1086.       the default of using the current directory.  For example, if the
  1087.       configuration file were stored on a network drive, drive U:, in
  1088.       the U:\UTIL subdirectory, then the following SET command
  1089.       would set up a users DOS environment:
  1090.  
  1091.            SET TSRS_CA=U:\UTIL
  1092.  
  1093. Method 2:  Using the command line.
  1094.  
  1095.       The command line parameters are checked during TSR-Select
  1096.       load time for the switch, /CA:<drive/directory>.  If it exists
  1097.       and it specifies a valid directory, that directory will become the
  1098.       default directory, over-riding both the current directory and any
  1099.       DOS environment TSRS_CA variable.  For example, if the
  1100.       configuration file were stored on a network drive, drive U:,
  1101.       directory U:\UTIL, then the following TSR-Select load
  1102.       command line would change the default and override any DOS
  1103.       environment variable that may exist:
  1104.  
  1105.            TSELECT /CA:U:\UTIL
  1106.  
  1107.  
  1108. Avoiding The Need for /CA or /CN
  1109.  
  1110. It is possible, however, to make sure the configuration file is on the
  1111. same drive and directory as the executable.  For example, say you
  1112. have a U: drive set for everyone in the network, and say all your
  1113. utility programs reside on U:\UTIL.  If TSR-Select and the
  1114. TSRSCFG.<Alt-255> file were stored in U:\UTIL, then -- for
  1115. example -- during login you have a batch file that starts from C: and
  1116. must end on C:, then a few lines in a batch file could say:
  1117.  
  1118.       ...
  1119.       U:
  1120.       CD \UTIL
  1121.       TSELECT
  1122.       C:
  1123.       ...
  1124.  
  1125. Multiple Configuration Files
  1126.  
  1127. All these examples assume that there is one configuration file,
  1128. TSRSCFG.<Alt-255>.  However, in a network environment, you
  1129. may find that you want multiple configurations, some for this group,
  1130. another for that group, unique ones for administrators, and one for the
  1131. average user.
  1132.  
  1133. This is achieved again through either a DOS environment variable or
  1134. through a TSELECT command line parameter.
  1135.  
  1136. Method 1:  Using DOS environment variables.
  1137.  
  1138.       The DOS environment is checked during TSR-Select load time
  1139.       for the variable, TSRS_CN.  If it exists and it specifies a valid
  1140.       file name, that will become the default configuration file name,
  1141.       over-riding the default of using TSRSCFG.<Alt-255>.  For
  1142.       example, if the configuration file were stored on a network
  1143.       drive, drive U:, in the U:\UTIL subdirectory, and the
  1144.       Marketing group wanted a different configuration from
  1145.       everyone else, then the following SET commands would set up
  1146.       a users DOS environment:
  1147.  
  1148.            SET TSRS_CA=U:\UTIL
  1149.            SET TSRS_CN=MKTG.CFG
  1150.  
  1151. Method 2:  Using the command line.
  1152.  
  1153.       The command line parameters are checked during TSR-Select
  1154.       load time for the switch, /CN:<drive/directory>.  If it exists
  1155.       and it specifies a valid configuration file name, that file name
  1156.       will become the default, over-riding both the TSRSCFG.<Alt-
  1157.       255> file and any DOS environment TSRS_CN variable.  For
  1158.       example, if the configuration file were stored on a network
  1159.       drive, drive U:, directory U:\UTIL, and the Marketing group
  1160.       wanted a different configuration from everyone else, then the
  1161.       following TSR-Select load command line would change the
  1162.       default and override any DOS environment variable that may
  1163.       exist:
  1164.  
  1165.            TSELECT /CA:U:\UTIL /CN:MKTG.CFG
  1166.  
  1167. NOTE FOR VERSION 1.0 AND 1.01 USERS:  Although the
  1168. Integrated Configuration Environment can only create the
  1169. TSRSCFG.<Alt-255> encrypted file name, you can easily change
  1170. it by using the DOS rename command.  For example, to change the
  1171. final, encrypted file to MKTG.CFG, type in:
  1172.  
  1173.       REN TSRSCFG.[Alt][2][5][5] MKTG.CFG
  1174.  
  1175. Where the line says:  [Alt][2][5][5], that means you need to press
  1176. down and hold the [Alt] key, then using the numeric keypad, type in
  1177. the numbers [2] [5] [5], then release the [Alt] key.  This will create
  1178. the ASCII character <Alt-255>.  If you need to decrypt a file, it
  1179. must first be renamed to TSRSCFG.<Alt-255>.
  1180.  
  1181.  
  1182. Why Not A Self-Modifying .EXE?
  1183.  
  1184. TECHNICAL NOTE:  Some of you more advanced PC types may
  1185. wonder why I don't allow for the re-configuration of the
  1186. TSELECT.EXE or TSELECTM.EXE executable files directly -- as
  1187. is popular with many modern programs.  Primarily, it is so you can
  1188. attach the network file attributes (such as those found in Banyan
  1189. VINES and Novell Netware), such as Execute-Only, or "+E", to the
  1190. executable.  Programs which must read configuration data directly
  1191. from the executable must be able to open the executable file as if it
  1192. were a data file.  Using the "+E" attribute would not allow the
  1193. program to perform even a read-only file open.  Also, the
  1194. TSELECT.EXE and TSELECTM.EXE executables are in a
  1195. compressed format, and the technology that allows for the
  1196. compression of the executable does not account for self-modifying
  1197. programs.  Other networks may have similar environments.
  1198.  
  1199.  
  1200. Activating TSR-Select From The DOS Prompt
  1201.  
  1202. Versions 1.02 and above of TSR-Select come with a supplemental
  1203. program called TSELECTM.EXE.  TSELECTM is identical to
  1204. TSELECT except that the TSR routines were stripped out.  So, in
  1205. effect, TSELECTM is simply a menu program.  It looks identical to
  1206. your TSR-Select menu, and acquires it's information from the same
  1207. configuration file that was specified.  It is very important that it is
  1208. installed correctly in order for it to be available to the user.
  1209.  
  1210. TSELECTM.EXE must be placed in the same subdirectory that
  1211. TSELECT.EXE is in.  When this is done, the default configuration
  1212. file for TSELECTM is that subdirectory.  If a configuration file area
  1213. and/or name was specified at the time TSELECT was executed, then
  1214. TSELECTM will acquire its configuration information from that area.
  1215.  
  1216. The way this works is if a command-line parameter was used with
  1217. TSELECT to indicate a different area and/or name for the
  1218. configuration file, then TSELECT puts that information into the DOS
  1219. environment.  This will overwrite the DOS environment variables
  1220. TSRS_CA and TSRS_CN, if they were in the users DOS
  1221. environment.  Normally, this should not be a problem since the
  1222. command line parameters always take precedence over the
  1223. environment variables.
  1224.  
  1225. If no command-line parameters were specified, but DOS environment
  1226. variables existed, then TSELECTM will read these and use these to
  1227. find the configuration files.  If neither command-line parameters nor
  1228. DOS environment variables were used, then TSELECTM will expect
  1229. to find the default configuration files in the same subdirectory that it
  1230. is stored in.
  1231.  
  1232. This is a failry complex procedure in theory, but quite simple in
  1233. practice.  Just make sure that TSELECTM.EXE and TSELECT.EXE
  1234. are in the same subdirectory along with the default configuration file.
  1235.  
  1236.  
  1237. The stand-alone program, TSELECTM, requires about 100K to load
  1238. into memory, but will only be using about 21K of memory when the
  1239. user selects an option.  Most of TSELECTM is swapped out to disk
  1240. or EMS memory in order to make as much of DOS available to the
  1241. user as possible.  Any abort, cancel or disruption in the selected
  1242. option should always return the user to the TSELECTM menu, since
  1243. it is still in memory.  All of the restrictions that apply to TSELECT
  1244. also apply to TSELECTM, the most important of which is not to
  1245. execute any programs that perform low-level disk functions.
  1246.  
  1247.  
  1248.  
  1249.  
  1250.  
  1251. 7   How the End-User Uses TSR-Select
  1252.  
  1253.  
  1254. Once it is loaded in memory, to activate TSR-Select, use
  1255. [Alt]-[LeftShift]-[M] as the hotkey.  You must press down and hold
  1256. down both the [Alt] key and the [Left-Shift] key, and while doing so,
  1257. press the [M] key.
  1258.  
  1259.           ╒══TSR-Select══╕
  1260.           │  Mail        │
  1261.           │  TimeTalk    │
  1262.           │  SetPrint    │
  1263.           │  LastMsg     │
  1264.           ╘═══════════1.0╛
  1265.  
  1266.         Example TSR-Select Menu
  1267.  
  1268.  
  1269. After a short swapping delay, a menu will be displayed over your
  1270. existing screen.  Select the program to run by highlighting the
  1271. selection, using the up arrow or down arrow keys, then pressing
  1272. [Enter].  Each selection should also have a character which is
  1273. highlighted; you can select the program by pressing the key for that
  1274. character.  For example, using the menu above, if the "P" in
  1275. "SetPrint" were highlighted, then even if "Mail" were highlighted,
  1276. pressing the "P" key will immediately activate "SetPrint."  When you
  1277. exit that program, you will be returned to the TSR-Select menu.
  1278. Pressing [ESC] will then return you to your original application.
  1279.  
  1280.  
  1281. What Happens If The Selection Is Not Available?
  1282.  
  1283. If TSR-Select cannot run a program when you request it, it will
  1284. display the following error message and return to the TSR-Select
  1285. menu:
  1286.  
  1287. Unable to locate Z:\CHAT.EXE...
  1288.  
  1289. TSR-SELECT will not allow access to your selection without
  1290. resolution of this problem.  You may not have a network drive set
  1291. properly.
  1292.  
  1293. Press any key to continue...
  1294.  
  1295.  
  1296. Swapping Delays
  1297.  
  1298. If using EMS memory or a RAM disk for swapping, the delay on a
  1299. 386-based PC is barely noticeable, and on 286- or 8088-based PCs it
  1300. is infinitely preferable to a disk swap, although still a bit slow (1-5
  1301. seconds).  Swapping to disk, however, can present a delay that will
  1302. range from about 2 seconds to 30 seconds, depending on the speed of
  1303. your PC and hard disk.  After choosing a selection from the TSR-
  1304. Select menu, then exiting that selection, you will always be returned
  1305. to the TSR-Select menu.  For users swapping to disk, this is
  1306. advantageous because it reduces the amount of swapping that occurs,
  1307. especially if the user wants to execute another TSR-Select selection
  1308. immediately.
  1309.  
  1310.  
  1311. Auto-Load of TSR-Select Recommended
  1312.  
  1313. It is recommended that TSR-Select be loaded automatically whenever
  1314. a user logs in to the network.  This can be accomplished several
  1315. ways, one of which is by using a "POSTLOGIN" command in the
  1316. user profile (if available on your network).  If you have network
  1317. applications configured in TSR-Select, it is strongly recommended that
  1318. TSR-Select always be unloaded from memory whenever logging out
  1319. of the network.  The network programs that TSR-Select would access
  1320. are no longer available once the user has logged out.
  1321.  
  1322.  
  1323.  
  1324. 8   Unloading TSR-Select
  1325.  
  1326.  
  1327. Unload TSR-Select from memory by typing:
  1328.  
  1329.             TSR-Select /U
  1330.  
  1331. from the DOS command line.  The unload will succeed only if no
  1332. TSRs that grab interrupt vectors have been loaded after TSR-Select.
  1333. If you attempt to unload TSR-Select from within a batch file, the
  1334. memory will be trapped until the batch file completes.
  1335.  
  1336.  
  1337.  
  1338.  
  1339.  
  1340.  
  1341. 9   Warnings and Restrictions
  1342.  
  1343.  
  1344. Although the following warnings and restrictions in running
  1345. TSR-Select may sound daunting, TSR-Select is performing a function
  1346. that DOS was never supposed to allow, so some flexibility is lost.
  1347.  
  1348.  
  1349. DOS Version Restrictions
  1350.  
  1351. TSR-Select does not work with any DOS prior to 3.0.  Either piece
  1352. of swapping technology -- swappable TSR's or swapping exec --
  1353. works fine by itself, but the two don't combine well.  Interestingly,
  1354. AT&T DOS version 2.11 works with TSR-Select, which suggests the
  1355. presence of a bug in the earlier DOS versions.  TSELECT.EXE nor
  1356. TSELECTM.EXE, as supplied, will not load for any DOS version
  1357. prior to 3.0.
  1358.  
  1359.  
  1360. Well-Behaved Programs vs. Ill-Behaved Programs
  1361.  
  1362. WARNING:  TSR-Select expects to deal strictly with "well-behaved"
  1363. foreground programs (like Word Perfect, dBASE, Lotus 2.01, etc.).
  1364. There are certain complications involved with using TSR-Select while
  1365. ill-behaved programs are running in the foreground, including but not
  1366. limited to strange color settings (especially with EGA/VGA monitors).
  1367.  
  1368.  
  1369. Using TSR-Select At the DOS Prompt
  1370.  
  1371. In versions of TSR-Select prior to 1.02, TSR-Select could not be
  1372. activated at the DOS prompt.  It was only for use within another
  1373. program.
  1374.  
  1375. With version 1.02 and above, however, a version of TSR-Select
  1376. called TSELECTM has the menu functions but no TSR capability.
  1377. When a user calls TSR-Select from the DOS prompt, TSR-Select will
  1378. determine that it is not inside another program and then run
  1379. TSELECTM.  For this to work, you must place the TSELECTM.EXE
  1380. program in the same sub-directory where the TSELECT.EXE program
  1381. is, or where the configuration file is.  Failure to do this will result in
  1382. an error message whenever the user tries to access TSR-Select from
  1383. the DOS prompt.
  1384.  
  1385.  
  1386. Save the Foreground Data Before Activating TSR-
  1387. Select
  1388.  
  1389. Because of the capricious nature of running swappable TSR's with
  1390. DOS, it is highly advisable that users train themselves to save the data
  1391. from the current foreground program prior to executing the TSR-
  1392. Select hot-key.  However unlikely it is that TSR-Select may lock-up
  1393. the PC, even if it is only once a year that it happens, following the
  1394. practice of saving the foreground programs data would be well worth
  1395. the inconvenience.
  1396.  
  1397.  
  1398. Loading TSR-Select in High Memory
  1399.  
  1400. TSR-Select may not be loaded "high," using such utilities as QEMM,
  1401. QRAM, or 386MAX.  TSR-Select requires a large amount of
  1402. contiguous RAM space that must immediately follow its kernel in
  1403. memory.
  1404.  
  1405.  
  1406. The Loading Sequence for TSR-Select
  1407.  
  1408. Like any swappable TSR, TSR-Select should not be loaded before
  1409. programs or TSRs that contain hardware interrupt handlers.
  1410. Examples include network shells, asynchronous communications
  1411. programs, and multitasking operating systems.  This means you
  1412. should never load TSR-Select prior to loading a network shell.  This
  1413. also means you should avoid activating TSR-Select if a
  1414. communications program is the current foreground program, such as
  1415. Procomm Plus, CrossTalk. or QModem.  TSR-Select should never be
  1416. used with multitasking or swapping programs such as DesqView,
  1417. DoubleDOS, HeadRoom, SwitchIt, Windows 2.x or Windows 3.x.
  1418.  
  1419.  
  1420.  
  1421. Loading TSR-Select Between the Network Shell and
  1422. Other Communications Programs
  1423.  
  1424. NETWORK USERS NOTE:  Loading TSR-Select after the network
  1425. shell is certainly ok.  However, programs that use the network shell
  1426. as a link to another communications medium -- for example,
  1427. NETBIOS or a 3270 emulator program -- may have trouble
  1428. maintaining the communications connection if they are swapped out
  1429. for very long.  It is recommended that you test this possibility.
  1430.  
  1431.  
  1432. Interruption of the Socket Interface
  1433.  
  1434. VERY IMPORTANT:  Banyan VINES applications such as MAIL,
  1435. MANAGE, MNET (or NetMan), and most of the applications found
  1436. on the Z: drive, establish client/server relationships when executed.
  1437. They use socket calls for a communications protocol and they expect
  1438. to always be in touch with each other.  Interrupting those socket
  1439. calls can have serious effects, sometimes resulting in a lock-up,
  1440. requiring a cold boot.  Since TSR-Select swaps out the foreground
  1441. program, any communications that may have been established is
  1442. forcibly relinquished.  In summary, I would strongly discourage the
  1443. use of TSR-Select while the foreground program is a Banyan
  1444. application.  For example, if you are running MAIL as the
  1445. foreground application, and you want to execute TimeTalk, DO
  1446. NOT use TSR-Select to execute TimeTalk, or vice versa.  (TimeTalk
  1447. also establishes a client/server relationship via socket calls.)  This
  1448. scenario may well exist for other networks.
  1449.  
  1450.  
  1451. Is The DOS Prompt Active?
  1452.  
  1453. The techniques TSR-Select uses to detect that it was popped up at the
  1454. command line may be fooled by multitasking operating systems such
  1455. as DesqView and Windows.  It is not recommended that you use
  1456. TSR-Select with these programs.  Also, DOS level applications such
  1457. as EDLIN and DEBUG may also fool TSR-Select into thinking you
  1458. are still at the DOS prompt.  The latter problem rarely occurs,
  1459. however.
  1460.  
  1461.  
  1462. TSR-Select and the Graphics Mode
  1463.  
  1464. You may not pop-up TSR-Select from within a program operating in
  1465. graphics mode.  This is not a limitation of the swappable TSR itself;
  1466. TSR-Select simply doesn't know how to save and restore the state of
  1467. a graphics screen.  Since there is currently no standard in the IBM-
  1468. compatible PC industry for graphics adapters, it is unlikely that this
  1469. can be resolved in the near future.  When the new VESA standard is
  1470. fully implemented, a future version of TSR-Select will support it.
  1471.  
  1472.  
  1473. Technical Info
  1474.  
  1475. Most of the memory area that it reclaims isn't used directly by TSR-
  1476. Select.  Besides the code, data, and stack space that TSR-Select
  1477. actually uses, it retains a variable amount of heap space that provides
  1478. the free RAM for the programs.  Also, TSR-Select uses a swapping
  1479. DOS shell: after the swappable TSR takes control, it swaps the TSR's
  1480. code and data back out, shrinks its memory allocation to the
  1481. minimum, and calls the DOS EXEC function to activate a DOS
  1482. command line.  The amount of memory free at this command line can
  1483. range from 30K to over 500K depending on when and how TSR-
  1484. Select was loaded.  After you exit from the program (e.g., MAIL,
  1485. SETPRINT, etc.), the sequence is reversed and the original
  1486. application regains control.
  1487.  
  1488.  
  1489.  
  1490.  
  1491. 10  Known Problems with Version 1.0 and 1.01
  1492.  
  1493.  
  1494. Keyboard State
  1495.  
  1496. The keyboard state may not reset, so after TSR-Select was used and
  1497. then exited, the Ctrl, Alt or Shift key may think it's being pressed.
  1498. So if another application is looking for, say, Ctrl-Shift, and you
  1499. merely press the Shift key, the Ctrl key may be "on", so the other
  1500. application may think you pressed Ctrl-Shift, when you really didn't.
  1501. This is very rare.
  1502.  
  1503.  
  1504. Screen State Restore
  1505.  
  1506. The screen may not reset properly with ill-behaved programs.  If
  1507. another program changes the colors on the screen, TSR-Select does
  1508. not properly save those settings, change them to "normal" (normal for
  1509. TSR-Select), then restore them.  The result may be that, while
  1510. running TSR-Select or any of the programs that you can activate from
  1511. TSR-Select, the colors on the screen may be, shall we say, weird.
  1512. This is especially a problem with ill-behaved programs that makes
  1513. changes to the palette and DAC registers - and the blink register -
  1514. directly.
  1515.  
  1516.  
  1517. Graphics Screen
  1518.  
  1519. TSR-Select should refuse to activate when a graphics screen is
  1520. present, but it may activate if the program breaks all the rules.  This
  1521. causes several complications.  Activating TSR-Select while running
  1522. a graphics program that allows this will result in returning to the
  1523. foreground program with an unknown screen state.
  1524.  
  1525. NOTE:  There is a "trick" to using TSR-Select with graphics
  1526. programs.  For example, Freelance 3.x switches to text mode when
  1527. accessing some of its menus, e.g., Print Options.  Once in the text
  1528. mode, TSR-Select can be successfully activated and, when finished,
  1529. the program restored.  If the graphics program you are using does not
  1530. have a text mode, then you may be able to shell to DOS.  This almost
  1531. always will switch the PC to text mode.  At that point, you can load
  1532. a very small program (such as COMP, found in almost all DOS') then
  1533. activate TSR-Select.  When finished, exit the small program, then
  1534. type EXIT.
  1535.  
  1536.  
  1537.  
  1538.  
  1539. 11  TSR-Select License Information
  1540.  
  1541.  
  1542. The following is a sample of the TSR-Select license.  Each
  1543. corporation or individual purchasing a license to use TSR-Select will
  1544. have an original license document separate from this manual.
  1545.  
  1546. TSR-Select is licensed on a per server basis, and is non-transferable.
  1547.  
  1548. TSR-Select, when used on a Local Area Network or Wide Area
  1549. Network, may not be pooled; any server with a user with the potential
  1550. of accessing TSR-Select must have a license.  The 'per server' license
  1551. is available for $495 per server for the first three servers, and $195
  1552. per server for each server after three.  Site and corporate licenses are
  1553. available.
  1554.  
  1555. The 'per user' license is $45.  The $45.00 fee does include upgrades
  1556. or technical support (see below) for one year.  However, at the
  1557. discretion of the licenser, per user licenses may only be sold to
  1558. individuals who do not own, operate or have access to a network.
  1559.  
  1560. One complete manual on disk is provided for any company ordering
  1561. one or more copies of TSR-Select.  It will be provided in the
  1562. following forms, on request: paper, Word Perfect format, or ASCII
  1563. text format.  Companies purchasing a non-'single user' license will be
  1564. provided a bound manual.
  1565.  
  1566.  
  1567. Distribution
  1568.  
  1569. The author will ship only one diskette to any company licensing a
  1570. customized version of TSR-Select.  This diskette will contain the
  1571. programs, TSELECT.EXE, TSELECTM.EXE and SELECTC.EXE,
  1572. as well as the documentation in ASCII text format.
  1573.  
  1574. For upgrades and technical support after the first year, an additional
  1575. fee of $80.00 per server, per year, will be assessed.  QCS reserves
  1576. the right to change this fee without notice.
  1577.  
  1578.  
  1579.  
  1580.  
  1581. Definition of upgrade
  1582.  
  1583. Upgrades include any new feature, bug fix, improvement, or rewrite
  1584. of the program that is normally included in the standard, commercial
  1585. version of TSR-Select.
  1586.  
  1587. What is not covered by "upgrade":  the user(s) of any version of
  1588. TSR-Select requesting new features, changes, additions to the
  1589. environment, or improvements, not found or included in the
  1590. non-customized, commercial version of TSR-Select.  These changes
  1591. are to be covered in a separate contract document.
  1592.  
  1593. Definition of technical support
  1594.  
  1595. The user(s) of any version of TSR-Select are required to have one
  1596. person as a contact for technical support from the author.  End-users
  1597. are not permitted to contact the author. In the event that a group of
  1598. persons at a company are all equally responsible for technical support
  1599. of a large group of end-users, up to three of those persons may be
  1600. assigned as the contacts for technical support.  Technical support will
  1601. include telephone contact not exceeding 30 minutes, during regular
  1602. business hours.  In the event that on-site consultations are required,
  1603. the author retains the right to charge an hourly fee of $85 plus
  1604. expenses.  This rate is only for consultations pertaining directly to
  1605. TSR-Select and its use, and any discussions concerning modifications
  1606. or additions to TSR-Select.  Consultations on any other subject may
  1607. be charged at a higher rate.
  1608.  
  1609. The author assumes no liability for the use or abuse of
  1610. TSELECT.EXE, TSELECTM.EXE or SELECTC.EXE.  The author
  1611. is not responsible for any lost data, damage to other files, or other
  1612. consequential damages that may occur while TSR-Select is in memory
  1613. or in use.  This includes any subsequent attachment of a virus to
  1614. TSR-Select.  The author has made a genuine and reasonable effort in
  1615. creating TSR-Select for the purposes stated in this manual, but none
  1616. other are implied or warranted.
  1617.  
  1618. All license payments should be sent to:
  1619.  
  1620.               Quadrant Computer Systems
  1621.               13164 Memorial Dr., Suite 126
  1622.               Houston, TX 77079
  1623.  
  1624. To report problems or suggestions regarding TSR-Select, or for more
  1625. information, the author can be contacted at CompuServe 70070,460,
  1626. or 713-825-6900.  Fax #:  713-467-4135.
  1627.  
  1628. * Due to a special arrangement, Panhandle Eastern Corporation employees who use TSR-Select for business purposes are
  1629. exempt from paying any fees unless the program is for personal use.
  1630.  
  1631.     -------------------------------------------------------------------
  1632.  
  1633. Companies purchasing TSR-Select must assure the author that the
  1634. software shall be used for business purposes only.  End-users should
  1635. be notified that personal use of TSR-Select is a violation of the
  1636. license.  Also, the author assumes no responsibility for any lost data,
  1637. damage to other files, or other consequential damages that may occur
  1638. while TSR-Select is in memory, active or inactive.  This includes any
  1639. subsequent attachment of a virus to TSR-Select.
  1640.  
  1641.  
  1642.  
  1643.  
  1644.  
  1645. Backup
  1646.  
  1647. Backup of the software and documentation is allowed under the
  1648. provisions of the United States Copyright law.  Backup copies are for
  1649. archival purposes only, and may not be distributed to anyone.
  1650.  
  1651.  
  1652.  
  1653. 12  If You Used TSR-Mail v2.x
  1654.  
  1655.  
  1656. Summary Overview
  1657.  
  1658. TSRMAIL provided a pop-up menu of specific Banyan VINES
  1659. selections, Mail, Chat, SetPrint, EndSpool, LastMsg and Send.  The
  1660. primary difference between TSRMAIL and TSR-Select is the
  1661. additional flexibility of being able to create your own menu selections.
  1662. This makes TSR-Select inherently more complicated, so it is
  1663. important you read the section on Configuring TSR-Select.
  1664.  
  1665.  
  1666. Detail
  1667.  
  1668. There are few changes that separate TSRMAIL v2.x and TSR-Select.
  1669. Rather than being limited to five Banyan VINES network specific
  1670. programs, the network administrator or PC support person can create
  1671. their own TSR-Select selections.  This offers infinite flexibility, future
  1672. compatibility, and results in more functionality for your end-users.
  1673.  
  1674. In effect, this capability allows you to turn ANY program -- whether
  1675. it be Lotus, dBASE, or any commercial, Shareware or public domain
  1676. program, or any internally developed program -- into a memory-
  1677. resident program only requiring 8 kilobytes of conventional memory.
  1678.  
  1679.  
  1680.  
  1681.  
  1682.  
  1683. 13  The Temporary Batch File
  1684.  
  1685.  
  1686. As noted before in the section "How Does TSR-Select Work?", a
  1687. temporary batch file is written to disk and then executed by TSR-
  1688. Select.
  1689.  
  1690. The default name for this batch file is TSRS$.BAT and the default
  1691. area that this batch file is written to is the root directory of C: (C:\).
  1692.  
  1693. If you have a need to change the area (however unlikely that is), you
  1694. may use either a command line switch or an environment variable to
  1695. change the area for the file.
  1696.  
  1697. Method 1:  Using DOS environment variables.
  1698.  
  1699.       The DOS environment is checked during TSR-Select load time
  1700.       for the variable, TSRS_A.  If it exists and it specifies a valid
  1701.       directory, that will become the default directory, over-riding
  1702.       the default of using the C:\ directory.  For example, if you
  1703.       wanted the temporary batch file to execute in the C:\TEMP
  1704.       subdirectory, then the following SET command would set up a
  1705.       users DOS environment:
  1706.  
  1707.            SET TSRS_A=C:\TEMP
  1708.  
  1709. Method 2:  Using the command line.
  1710.  
  1711.       The command line parameters are checked during TSR-Select
  1712.       load time for the switch, /A:<drive/directory>.  If it exists
  1713.       and it specifies a valid directory, that directory will become the
  1714.       default directory, over-riding both the C:\ directory and any
  1715.       DOS environment TSRS_A variable.  For example, if you
  1716.       wanted the temporary batch file to execute in the C:\TEMP
  1717.       subdirectory, then the following TSR-Select load command line
  1718.       would change the default and override any DOS environment
  1719.       variable that may exist:
  1720.  
  1721.            TSELECT /A:C:\TEMP
  1722.  
  1723.  
  1724. If you have a need to change the name (however unlikely that is), you
  1725. may use either a command line switch or an environment variable to
  1726. change the name of the file.
  1727.  
  1728.  
  1729. Method 1:  Using DOS environment variables.
  1730.  
  1731.       The DOS environment is checked during TSR-Select load time
  1732.       for the variable, TSRS_N.  The value of that variable will
  1733.       become the default temporary batch file name, over-riding the
  1734.       default of using TSRS$.BAT.  For example, if you wanted the
  1735.       temporary batch file to execute in the C:\TEMP subdirectory,
  1736.       and the Marketing group wanted the name to be MKTG$.BAT,
  1737.       then the following SET commands would set up a users DOS
  1738.       environment:
  1739.  
  1740.            SET TSRS_A=C:\TEMP
  1741.            SET TSRS_N=MKTG$.BAT
  1742.  
  1743. Method 2:  Using the command line.
  1744.  
  1745.       The command line parameters are checked during TSR-Select
  1746.       load time for the switch, /N:<drive/directory>.  The value of
  1747.       that switch will become the temporary batch file name, over-
  1748.       riding both the TSRS$.BAT file name and any DOS
  1749.       environment TSRS_N variable.  For example, if you wanted the
  1750.       temporary batch file to execute in the C:\TEMP subdirectory,
  1751.       and the Marketing group wanted the name to be MKTG$.BAT,
  1752.       then the following TSR-Select load command line would change
  1753.       the default and override any DOS environment variable that
  1754.       may exist:
  1755.  
  1756.            TSELECT /A:C:\TEMP /N:MKTG$.BAT
  1757.  
  1758.  
  1759.  
  1760.  
  1761.  
  1762.  
  1763. Index
  1764.  
  1765.  
  1766. /?. . . . . . . . . . . . . . . . . . . . . . . . . . . . .1
  1767. /A:<drive/directory>. . . . . . . . . . . . . . . . . . . 46
  1768. /CA:<drive/directory>.. . . . . . . . . . . . . . . . . . 26
  1769. /CN:<drive/directory> . . . . . . . . . . . . . . . . . . 27
  1770. /D. . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
  1771. /N:<drive/directory>. . . . . . . . . . . . . . . . . . . 47
  1772. /SD:<drive> . . . . . . . . . . . . . . . . . . . . . . . 25
  1773. /U. . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
  1774. 3270 emulator . . . . . . . . . . . . . . . . . . . . . . 36
  1775. 386Max. . . . . . . . . . . . . . . . . . . . . . . 7, 9, 35
  1776. Automatic loading . . . . . . . . . . . . . . . . . . . . 32
  1777. Bad command or file name. . . . . . . . . . . . . . . . . 16
  1778. Banyan VINES. . . . . . . . . . . . . . . . . .3, 28, 36, 45
  1779. Batch File Missing. . . . . . . . . . . . . . . . . . . . .9
  1780. CHKDSK. . . . . . . . . . . . . . . . . . . . . . . . 10, 17
  1781. Chunk . . . . . . . . . . . . . . . . . . . . . . . . 12, 14
  1782. Comments. . . . . . . . . . . . . . . . . . . .4, 11, 12, 18
  1783. Communications program  . . . . . . . . . . . . . . . . . 36
  1784. Configuration file. . . . . . . . . .2, 4, 8, 11, 19, 22, 27
  1785. DEBUG . . . . . . . . . . . . . . . . . . . . . . . . . . 37
  1786. Default Behavior. . . . . . . . . . . . . . . . . . . . . 22
  1787. DesqView. . . . . . . . . . . . . . . . . . . . . . . . . 36
  1788. DIRSORT . . . . . . . . . . . . . . . . . . . . . . . 10, 17
  1789. DOS 5.x . . . . . . . . . . . . . . . . . . . . . . . . 7, 9
  1790. EDLIN . . . . . . . . . . . . . . . . . . . . . . . . . . 37
  1791. EMS memory. . . . . . . . . . . . . . . 2, 6, 22, 23, 25, 32
  1792. Error . . . . . . . . . . . . . . . . . . . . 13, 20, 22, 31
  1793.       Unable to locate <program name> . . . . . . . . . . 32
  1794. Error checking. . . . . . . . . . . . . . . . . . . . 15, 18
  1795. Error detection . . . . . . . . . . . . . . . . . . . . . 20
  1796. Execute-Only. . . . . . . . . . . . . . . . . . . . . . . 28
  1797. Graphics mode . . . . . . . . . . . . . . . . . . . . . . 37
  1798. ICE . . . . . . . . . . . . . . . . . . . . . . . .3, 11, 12
  1799. Ill-behaved programs. . . . . . . . . . . . . . . . . . . 34
  1800. Integrated configuration environment (ICE). . . . . . . . .3
  1801. Memory Requirements . . . . . . . . . . . . . . . . . . 7, 8
  1802. Multitasking operating systems. . . . . . . . . . . . . . 37
  1803. Multitasking programs . . . . . . . . . . . . . . . . . . 36
  1804. NETBIOS . . . . . . . . . . . . . . . . . . . . . . . . . 36
  1805. POSTLOGIN . . . . . . . . . . . . . . . . . . . . . . . . 32
  1806. QEMM. . . . . . . . . . . . . . . . . . . . . . . . . .9, 35
  1807. RAM disk. . . . . . . . . . . . . . . . . . . . . . . 25, 32
  1808. SELECTC.EXE . . . . . . . . . . . . . . . .3, 11, 19, 41, 43
  1809. SET TSRS_A= . . . . . . . . . . . . . . . . . . . . . 46, 47
  1810. SET TSRS_CA=. . . . . . . . . . . . . . . . . . . 26, 27, 46
  1811. SET TSRS_CN=. . . . . . . . . . . . . . . . . . . . . . . 27
  1812. SET TSRS_N= . . . . . . . . . . . . . . . . . . . . . . . 47
  1813. Socket calls. . . . . . . . . . . . . . . . . . . . . . . 36
  1814. Special characters. . . . . . . . . . . . . . . . . . . . 13
  1815.       $ . . . . . . . . . . . . . . . . . . . . . . . . . 14
  1816.       + . . . . . . . . . . . . . . . . . . . . . . . . . 15
  1817.       * . . . . . . . . . . . . . . . . . . . . . . . . . 13
  1818.       < . . . . . . . . . . . . . . . . . . . . . . . . . 15
  1819.       > . . . . . . . . . . . . . . . . . . . . . . . . . 18
  1820.       @ . . . . . . . . . . . . . . . . . . . . . . . . . 17
  1821. Strange color . . . . . . . . . . . . . . . . . . . . . . 34
  1822. Swapping programs . . . . . . . . . . . . . . . . . . . . 36
  1823. Technical support after the first year. . . . . . . . . . 42
  1824. TSELECT.CFG . . . . . . . . . . . . . . . . . 11, 12, 14, 17
  1825.       example of. . . . . . . . . . . . . . . . . . . . . 18
  1826. TSELECT.EXE . . . . . . . . . . . . . . . . 3, 5, 28, 34, 41
  1827. TSELECTM. . . . . . . . . . . . . . . . . .3, 28, 34, 41, 43
  1828. TSRMAIL . . . . . . . . . . . . . . . . . . . . . . . . . 45
  1829. TSRS$.BAT . . . . . . . . . . . . . . . . . . . . . . 46, 47
  1830. TSRSCFG.<Alt-255> . . . . . . . . . . . . . . 20, 22, 26, 27
  1831. Unloading TSR-Select. . . . . . . . . . . . . . . . . . . 33
  1832. Upgrade . . . . . . . . . . . . . . . . . . . . . . . . . 42
  1833. User profile. . . . . . . . . . . . . . . . . . . . . . . 32
  1834. Viewer. . . . . . . . . . . . . . . . . . . . . . . . . . .3
  1835. Well-behaved programs . . . . . . . . . . . . . . . . . . 34
  1836. Windows 3.x . . . . . . . . . . . . . . . . . . . . . . . 36
  1837.